module MUX_4to1(D3, D2, D1, D0, S, Y);
	parameter SIZE=1;
	input [SIZE-1:0] D0, D1, D2, D3;
	input [1:0] S;
	output [SIZE-1:0] Y;
	reg [SIZE-1:0] Y;
	
	always @(*)
	begin
		case(S)
			2'b00: Y=D0;
			2'b01: Y=D1;
			2'b10: Y=D2;
			2'b11: Y=D3;
			default: Y={SIZE{1'b0}};
		endcase
	end
endmodule